从 SQL Server 发送邮件时修复“配置文件名称无效”

您所在的位置:网站首页 admin profile 从 SQL Server 发送邮件时修复“配置文件名称无效”

从 SQL Server 发送邮件时修复“配置文件名称无效”

2023-04-09 20:25| 来源: 网络整理| 查看: 265

从 SQL Server 发送邮件时修复“配置文件名称无效”

如果您尝试从 SQL Server 发送邮件,但收到“配置文件名称无效”,这可能是因为您没有为@profile_name参数指定有效的配置文件。

例子

例如,假设您使用以下 T-SQL 代码在 SQL Server 代理作业失败时向管理员发送通知电子邮件:

EXEC msdb.dbo.sp_send_dbmail @profile_name = 'DB Admin Profile', @recipients = '[email protected]', @body = 'Your favorite SQL Server Agent job just failed', @subject = 'SQL Server Agent Job: FAILED';

但是您收到以下错误:

Msg 14607, Level 16, State 1, Procedure msdb.dbo.sysmail_verify_profile_sp, Line 42 profile name is not valid

此错误特别告诉我们“配置文件名称无效”。

要使用数据库邮件发送电子邮件,您需要直接指定配置文件而不是用户帐户。在这种情况下,我指定了 a @profile_nameof DB Admin Profile,但实际上并不存在这样的配置文件。

在我可以发送邮件之前,我需要将一个用户添加到msdb数据库,创建一个数据库邮件帐户,然后创建一个配置文件并将数据库邮件帐户添加到该配置文件。然后我需要将用户添加到配置文件中。

总而言之,它看起来像这样:

-- Switch to the msdb database USE msdb; -- Create a user on the msdb database CREATE USER Marge FOR LOGIN Marge; -- Create a Database Mail account EXECUTE msdb.dbo.sysmail_add_account_sp @account_name = 'DB Admin', @description = 'Mail account for admin emails.', @email_address = '[email protected]', @replyto_address = '[email protected]', @display_name = 'DB Automated Mailer', @mailserver_name = 'smtp.example.com', @port = 25; -- Create a Database Mail profile EXECUTE msdb.dbo.sysmail_add_profile_sp @profile_name = 'DB Admin Profile', @description = 'Profile for admin emails.'; -- Add the account to the profile EXECUTE msdb.dbo.sysmail_add_profileaccount_sp @profile_name = 'DB Admin Profile', @account_name = 'DB Admin', @sequence_number = 1; -- Grant user access to the Database Mail profile EXECUTE msdb.dbo.sysmail_add_principalprofile_sp @profile_name = 'DB Admin Profile', @principal_name = 'Marge', @is_default = 1;

显然,您需要用您自己的替换各种细节。这还假设您指定了一个可以工作的邮件服务器。

完成后,您应该可以发送邮件了。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3